Social networks are often used to represent sets of nodes with varying degrees of separation. These nodes are typically arranged with directed edges that establish connections between the nodes. The nodes can represent persons, locations, entities, information, and the like. In the past, social networks have contained relatively few nodes. However, with the advent of online communities, relatively immense social networks with tens of millions of nodes have developed. Also, since nodes in social networks are connected by varying degrees of separation, it has become increasingly difficult to determine the shortest path for communication (if at all) between nodes that are members of these relatively immense social networks.